// 导出模块，目的是为了在其他文件中能导入
// 如果有import， 那么一定就会有 export
// 这里是默认导出，如何导入？？
export default {
  namespaced: true,
  state() {
    return {
      count: 888
    }
  },
  mutations: {
    // 定义一个函数，通过这个函数，来变更 state 中的数据：count
    updateCount(state, payload) {
      // state.count = state.count + payload
      state.count += payload
    }
  },
  actions: {
    // 定义一个异步返货函数
    deliver(context, payload) {
      // 使用 setTimeout 模拟异步
      setTimeout(() => {
        context.commit('updateCount', payload)
      }, 1000)
    }
  },
  getters: {}
}

// 这个文件直接导出一个对象
// 和隔壁 xian.js 先定义一个对象，再导出这个对象是一回事
// 这里写两种形式，是为了复习和巩固